package net.lanelife.casino.caipiao.dto.admin;

import javax.validation.constraints.NotNull;

import net.lanelife.casino.caipiao.entity.CompanyBankCard.RechargeAccountType;
import net.lanelife.casino.caipiao.entity.CompanyBankCard.UsesType;
import net.lanelife.casino.common.dto.TransientDTO;

import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;
import org.springframework.format.annotation.NumberFormat;

public class CompanyBankCardCreateDTO extends TransientDTO<Integer> {

	private static final long serialVersionUID = 9055640956201254639L;

	@NotBlank
	@Length(min = 2, max = 10)
	private String bankName;
	
	@NotBlank
	@Length(min = 2, max = 20)
	private String branchName;
	
	@NotBlank
	@Length(min = 2, max = 10)
	private String accountName;
	
	@NotBlank
	@Length(min = 2, max = 20)
	private String accountNo;
	
	@NotBlank
	@Length(min = 2, max = 20)
	private String accountEmail;
	
	@NotNull
	private RechargeAccountType rechargeAccountType = RechargeAccountType.EMAIL;
	
	@NotNull
	@NumberFormat(pattern = "0.##")
	private Double currentBalance;
	
	@NotNull
	@NumberFormat(pattern = "0.##")
	private Double warningAmount;
	
	@NotNull
	private UsesType usesType = UsesType.CK;

	public String getBankName() {
		return bankName;
	}

	public void setBankName(String bankName) {
		this.bankName = bankName;
	}

	public String getBranchName() {
		return branchName;
	}

	public void setBranchName(String branchName) {
		this.branchName = branchName;
	}

	public String getAccountName() {
		return accountName;
	}

	public void setAccountName(String accountName) {
		this.accountName = accountName;
	}

	public String getAccountNo() {
		return accountNo;
	}

	public void setAccountNo(String accountNo) {
		this.accountNo = accountNo;
	}

	public String getAccountEmail() {
		return accountEmail;
	}

	public void setAccountEmail(String accountEmail) {
		this.accountEmail = accountEmail;
	}

	public RechargeAccountType getRechargeAccountType() {
		return rechargeAccountType;
	}

	public void setRechargeAccountType(RechargeAccountType rechargeAccountType) {
		this.rechargeAccountType = rechargeAccountType;
	}

	public Double getCurrentBalance() {
		return currentBalance;
	}

	public void setCurrentBalance(Double currentBalance) {
		this.currentBalance = currentBalance;
	}

	public Double getWarningAmount() {
		return warningAmount;
	}

	public void setWarningAmount(Double warningAmount) {
		this.warningAmount = warningAmount;
	}

	public UsesType getUsesType() {
		return usesType;
	}

	public void setUsesType(UsesType usesType) {
		this.usesType = usesType;
	}

	
}
